package homework3;

import java.util.HashMap;
import java.util.Map;
import java.util.Set;

/**
 * 1. 定义一个：键Integer，值String类型的HashMap集合
 * 1. 存储以下数据：”张三” , “李四” , “ 王五”。（put）
 * 1. 打印集合大小；
 * 1. 使用“键找值”的方式遍历集合，打印键和值；(keySet)
 * 1. 使用“键值对”的方式遍历集合，打印键和值；(entrySet)
 * 1. 获取键为1的值，并打印(get)
 * 1. 获取键为10的值，并打印
 * 1. 判断集合中是否有键：10（containsKey）
 * 1. 删除键为1的键值对，删除完毕打印集合
 */
public class TestMap {
    public static void main(String[] args) {
        //创建hashmap集合
        Map<Integer, String> map = new HashMap<>();
        map.put(1, "张三");
        map.put(10, "李四");
        map.put(100, "王五");

        System.out.println("集合大小:" + map.size());

        //键找值
        Set<Integer> keys = map.keySet();
        for (Integer key : keys) {
            String value = map.get(key);
            System.out.println(key + "..." + value);
        }
        System.out.println("=============================");
        //键值对
        Set<Map.Entry<Integer, String>> entries = map.entrySet();
        for (Map.Entry<Integer, String> entry : entries) {
            Integer key = entry.getKey();
            String value = entry.getValue();
            System.out.println(key + "..." + value);
        }

        //获取键为1的值，并打印(get)
        String value = map.get(1);
        System.out.println("value = " + value);

        System.out.println("========================");

        //获取键为10的值，并打印
        String value1 = map.get(1);
        System.out.println("value1 = " + value1);

        //判断集合中是否有键：10（containsKey）
        boolean containsKey = map.containsKey(10);
        System.out.println("containsKey = " + containsKey);

        //删除键为1的键值对，删除完毕打印集合
        String remove = map.remove(1);
        System.out.println(map);

    }
}
